1. Field of the Invention
The present invention relates to digital signal processing, and, in particular, to encoding images for subsequent decoding and display.
2. Description of the Related Art
Many computer-based image processing applications provide the ability to define portions of an image as being transparent, on a pixel by pixel basis. A particular color may be reserved for transparent pixels. Any pixels of the image that are to be designated as transparent are assigned that reserved color. When the image is processed for display, pixels having the reserved color are not rendered (i.e., copied) to the display buffer for display on a computer monitor. As a result, only non-transparent pixels (i.e., those pixels having colors other than the reserved color) will appear on the monitor. This image processing technique is often referred to as chromakeying.
In typical chromakeying, each pixel of the image is compared to the reserved chromakey or transparency color, one by one, to determine whether the pixel is to be rendered to the display buffer. If the pixel is not the reserved color, then the pixel is non-transparent and processing is implemented to render that pixel to the display buffer. Otherwise, the pixel is transparent and processing is implemented to skip the current pixel. The pixel-render processing and the pixel-skip processing may involve the implementation of different sets of program code, one set of which is jumped to based on the results of the comparison of the pixel to the reserved transparency color.
Graphics applications typically build composite displays from different graphics images, each image of which may have both transparent pixels and non-transparent pixels. In some applications, the same image is to be displayed on the monitor more than once. For example, the image may be rendered at different locations within the same display (i.e., at the same time), or it may be repeated over successive updates of the display, either at the same location or at different locations.
For example, in a graphics application, a tile may be repeated at different locations within a single grid of a single display. In addition, that same grid may be repeated over a number of successive updates of the display. As a result, the graphics data for the tile needs to be processed multiple times. If transparency is enabled, under conventional processing schemes, each pixel of the tile is compared to the reserved transparency color to determine whether the pixel is to be rendered to the display buffer. When the tile is repeated multiple times within a single display and/or over multiple displays, the same transparency processing is repeated each time the image is processed for display. This can result in a great deal of redundant processing to determine pixel transparencies, one pixel at a time. Such redundant processing can severely impact the ability of the graphics application to operate efficiently (e.g., limit the rate at which the display can be updated).
What is needed is a processing scheme for graphics and other image data (such as video data) that minimizes redundant processing, such as transparency processing, that would otherwise exist when the same image data is to be rendered multiple times within the same display and/or over successive displays.
It is accordingly an object of this invention to overcome the disadvantages and drawbacks of the known art and to provide image encoding and decoding schemes that reduces such redundant processing.
Further objects and advantages of this invention will become apparent from the detailed description of a preferred embodiment which follows.